package ru.jexp.rcp.supply.beans.ek;

import org.eclipse.swt.widgets.Shell;

import ru.jexp.rcp.supply.beans.se.EkAddFormDetail;
import ru.jexp.rcp.supply.beans.se.EkAddFormMaterial;
import ru.jexp.rcp.supply.beans.se.EkAddFormPki;
import ru.jexp.rcp.supply.beans.se.EkAddFormSe;
import ru.jexp.rcp.supply.beans.se.IEkAddForm;

public interface EkTreeNodeFormCreator {

	public static final EkTreeNodeFormCreator SE_SE = new EkTreeNodeFormCreator() {
		@Override
		public IEkAddForm createAddForm(Shell shell) {
			return new EkAddFormSe(shell);
		}
	};
	
	public static final EkTreeNodeFormCreator SE_DATAIL = new EkTreeNodeFormCreator() {
		@Override
		public IEkAddForm createAddForm(Shell shell) {
			return new EkAddFormDetail(shell);
		}
	};
	
	public static final EkTreeNodeFormCreator SE_MATERIAL = new EkTreeNodeFormCreator() {
		@Override
		public IEkAddForm createAddForm(Shell shell) {
			return new EkAddFormMaterial(shell);
		}
	};

	public static final EkTreeNodeFormCreator SE_PKI = new EkTreeNodeFormCreator() {
		@Override
		public IEkAddForm createAddForm(Shell shell) {
			return new EkAddFormPki(shell);
		}
	};
	
	<EditElement> IEkAddForm createAddForm(Shell shell);
}
